TEST(1) | 用戶命令 | TEST(1) |
名稱¶
test - 檢查文件類型並比較值
概述¶
test 表達式
test
[ 表達式 ]
[ ]
[ 選項
描述¶
退出狀態值取決于表達式。
表達式被省略,則默認為假。否則,表達式可能為真或假,且以此設置返回狀態。可能出現的情況如下所示:
- ( 表達式 )
- 表達式為真
- ! 表達式
- 表達式為假
- 表達式1 -a 表達式2
- 表達式1 與表達式2 皆為真
- 表達式1 -o 表達式2
- 表達式1 或表達式2 為真
- -n 字符串
- 字符串長度非零
- STRING
- 等價于 -n 字符串
- -z 字符串
- 字符串的長度為 0
- 字符串1 = 字符串2
- 字符串相等
- 字符串1 != 字符串2
- 字符串不相等
- 整數1 -eq 整數2
- 整數1 與整數2 相等
- 整數1 -ge 整數2
- 整數1 大于或等于整數2
- 整數1 -gt 整數2
- 整數1 大于整數2
- 整數1 -le 整數2
- 整數1 小于或等于整數2
- 整數1 -lt 整數2
- 整數1 小于整數2
- 整數1 -ne 整數2
- 整數1 和整數2 不相等
- 文件1 -ef 文件2
- 文件1 和文件2 擁有相同的設備編號與 inode 編號
- 文件1 -nt 文件2
- 文件1 在修改時間上新于文件2
- 文件1 -ot 文件2
- 文件1 比文件2 更舊
- -b 文件
- 文件存在且為塊特殊文件
- -c 文件
- 文件存在且為字符特殊文件
- -d 文件
- 文件存在且為目錄
- -e 文件
- 文件存在
- -f 文件
- 文件存在且為普通文件
- -g 文件
- 文件存在且被設置了 set-group-ID 位
- -g 文件
- 文件存在且為有效組ID 所有
- -h 文件
- 文件存在且為一個符號鏈接(與 -L 相同)
- -k 文件
- 文件存在且被設置粘著位
- -L 文件
- 文件存在且為一個符號鏈接(與 -h 相同)
- -O 文件
- 文件存在且為有效用戶ID 所有
- -p 文件
- 文件存在且為命名管道
- -r 文件
- 文件存在且被授予讀權限
- -s 文件
- 文件存在且其大小大于零
- -S 文件
- 文件存在且為套接字
- -t FD
- 文件描述符 FD 在某個終端打開
- -u 文件
- 文件存在且被設置了 set-user-ID 位
- -w 文件
- 文件存在且被賦予了寫權限
- -x 文件
- 文件存在且被授予執行(或搜索)權限
除了 -h 和 -L,所有與指定文件相關的測試都跟隨符號鏈接。請注意在 shell 中圓括號需要被轉義(例如,使用反斜線)。也可以把“-l 字符串”作為指定整數,其值為該字符串的長度。
注記:[ 接受 --help 和 --version 選項,但是 test 並非如此。test 將它們與其它非空字符串同等看待。
注意:您的 shell 可能內置了自己的 test 和/或 [ 程序版本,它會覆蓋這裡所提及的相應版本。請查閱您的 shell 文檔獲知它所支持的選項。
作者¶
由 Kevin Braunsdorf 和 Matthew Bradburn 編寫。
報告錯誤¶
GNU coreutils 的在線幫助:
<http://www.gnu.org/software/coreutils/>
請向 <http://translationproject.org/team/zh_CN.html>
報告 [ 的翻譯錯誤。
版權¶
Copyright © 2016 Free Software Foundation, Inc. License
GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO
WARRANTY, to the extent permitted by law.
參見¶
完整文檔請見:
<http://www.gnu.org/software/coreutils/[>
或者在本地使用: info
'(coreutils) test invocation'
2016年二月 | GNU coreutils 8.25 |